/* 
 * File:   TesseractExecutor.h
 * Author: Guilherme Monteiro
 *
 */

#ifndef TESSERACTEXECUTOR_H
#define	TESSERACTEXECUTOR_H

#include <tesseract/strngs.h>
#include <leptonica/allheaders.h>
#include <tesseract/baseapi.h>

#include <cv.h>
#include <highgui.h>
#include <cxcore.h>

#include <cctype>

#include "../../TableTranscriber2/headers/NullImageException.h"
#include "../../TableTranscriber2/headers/Cell.h"
#include "Transcription.h"

#define LANGUAGE_CODE "por"

using namespace std;
using namespace tesseract;

class TesseractExecutor {
public:
    TesseractExecutor(vector<Cell> cells, string tiffImgPath);
    TesseractExecutor(const TesseractExecutor& orig);
    virtual ~TesseractExecutor();
    vector<Transcription*> runTesseract();
private:
    vector<Cell> cells;
    string tiffImgPath;
    
    string formatText(string str);
};

#endif	/* TESSERACTEXECUTOR_H */

